﻿#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>


//写一个函数返回参数二进制中 1 的个数。
int zh(int n)
{
	int count = 0;
	int i = 0;
	for(i=0;i<32;i++)
	{
		if ( 1 == (n & 1) )
			count++;
		n >>= 1;
	}
	return count;
}

int main()
{
	int n = 0;
	scanf("%d", &n);
	int i = zh(n);
	printf("%d", i);
	return 0;
}


//两个int（32位）整数m和n的二进制表达中，有多少个位(bit)不同？
int jk(int n)
{
    int count = 0;
    int i = 0;
    for (i = 0; i < 32; i++)
    {
        if (1 == (n & 1))
            count++;
        n >>= 1;
    }
    return count;
}

int main()
{
    int a, b;
    scanf("%d %d", &a, &b);
    int n = a ^ b;
    int i = jk(n);
    printf("%d", i);
    return 0;
}